package com.platform.data.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.platform.base.domain.BaseLocation;
import com.platform.common.annotation.Excel;
import com.platform.common.annotation.Excels;
import com.platform.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;

/**
 * 阀门采集数据对象 valve_data
 * 
 * @author wangqi
 * @date 2020-09-27
 */
@Data
public class ValveRead extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 阀门ID */
    @NotBlank(message = "阀门ID不能为空")
    @Excel(name = "阀门ID")
    private String valveId;

    /** 温度上限 */
    @Excel(name = "温度上限")
    private String max;

    /** 温度下限 */
    @Excel(name = "温度下限")
    private String min;

    /** 阀温度值 */
    @Excel(name = "阀温度值")
    private String temp;

    /** 室内温度 */
    @Excel(name = "室内温度")
    private String indoor;

    /** 工作时间 */
    @Excel(name = "工作时间")
    private String valveWork;
    /** 工作时间 */
    @Excel(name = "采集时间")
    private String valveCreate;

    /** 阀门开度 */
    @Excel(name = "阀门开度")
    private String aperture;

    /** 地址信息 */
    @Excels({
            @Excel(name = "地址全称", targetAttr = "locationName"),
            @Excel(name = "地址代码", targetAttr = "locationId", type = Excel.Type.EXPORT)
    })
    private BaseLocation location;
    /** 地址id */
    private String locationId;
    /** 地址id */
    private String locationName;
    /** 上线状态 */
    private Integer onlineStatus;

    /** 阀门开度最大值 */
    @Excel(name = "阀门开度最大值")
    private String aperturemax;

    /** 阀门开度最小值 */
    @Excel(name = "阀门开度最小值")
    private String aperturemin;

    /** 阀控温上限值 */
    @Excel(name = "阀控温上限值")
    private String tempmax;

    /** 采集器id */
    @Excel(name = "采集器id")
    private String collectorId;

    /** 阀门数量 */
    @TableField(exist = false)
    private int tempCount;

    /** 供暖标志 */
    @Excel(name = "供暖标志")
    private Integer heatStatus;
    /** 出水温度 */
    @Excel(name = "出水温度")
    private String outlet;

    /** 出水温度 */
    @Excel(name = "出水温度标志")
    private String outletStatus;
}
